chrome.runtime.onInstalled.addListener(() => {
  console.log("扩展程序安装完成");
  // 启用侧面板在动作点击时打开
  chrome.sidePanel.setPanelBehavior({ openPanelOnActionClick: true });
  // background.js

});


// background.js
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
  console.log("background-userClickedButton");
  if (request.action === 'click') {
    // 发送响应回标签页
    sendResponse({ greeting: 'background-userClickedButton from extension!' });
  }
});

// background.js
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
  if (request.action === 'add_user_button') {
    // 发送响应回标签页
    console.log('background 接收到了 add_user_button 点击事件，getTd2Data')
    chrome.storage.local.get(['elementData', 'currentUrl'], function (result) {
      sendResponse({ result: result });
    });
    return true;
  }

  if (request.action === 'get_user_id') {
    // 发送响应回标签页
    console.log('background 接收到了 get_user_id 点击事件，getTd2Data')
    chrome.storage.local.get(['currentUrl'], function (result) {
      sendResponse({ greeting: 'background 返回的消息 get_user_id', currentUrl: result });
    });
    return true;
  }

  if (request.action === 'thank_your') {
    // 发送响应回标签页
    console.log('background 接收到了 thank_your')
    // 使用 fetch 发出 PUT 请求
    fetch('https://itdajie.com/pollfish/callback/?device_id=' + request.new_device_id, {
      method: 'PUT', // 设置请求方法为 PUT
      headers: { 'Content-Type': 'application/json' }, // 设置请求头，指明发送的是 JSON 数据
      body: JSON.stringify(request.result.elementData.user) // 将 JSON 对象转换为字符串作为请求体
    })
      .then(response => {
        if (!response.ok) {
          throw new Error('Network response was not ok ' + response.statusText);
        }
        return response.json(); // 解析 JSON 响应
      })
      .then(data => {
        console.log('Success:', data); // 处理成功的响应数据
      })
      .catch(error => {
        console.error('Error:', error); // 处理错误
      });

    return true;
  }

});

chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
  if (message.action === "getFirstTabTitle") {
    chrome.tabs.query({}, (tabs) => {
      if (tabs && tabs.length > 0) {
        const firstTab = tabs[0];
        sendResponse({ title: firstTab.title });
      } else {
        sendResponse({ title: null });
      }
    });
    return true; // 表示异步响应
  }
});